<?php
namespace Admin\Controller;
use Think\Controller;
class IndexController extends Controller
{
    public function index()
    {
        echo "this is admin module!!";
        //$this->show('<style type="text/css">*{ padding: 0; margin: 0; } div{ padding: 4px 48px;} body{ background: #fff; font-family: "微软雅黑"; color: #333;font-size:24px} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.8em; font-size: 36px } a,a:hover,{color:blue;}</style><div style="padding: 24px 48px;"> <h1>:)</h1><p>欢迎使用 <b>ThinkPHP</b>！</p><br/>版本 V{$Think.version}</div><script type="text/javascript" src="http://ad.topthink.com/Public/static/client.js"></script><thinkad id="ad_55e75dfae343f5a1"></thinkad><script type="text/javascript" src="http://tajs.qq.com/stats?sId=9347272" charset="UTF-8"></script>','utf-8');
    }

    public function userlist()
    {
        $usersmodel = M('users');
        $local_users = $usersmodel->order('id desc')->select();
        $this->users = $local_users;
        //$this->
        $this->display();//把当前独享的所有全局变量传到相应的视图

    }


    public function bsUserList()
    {

        $User = M('users'); // 实例化User对象
        $count = $User->count();// 查询满足要求的总记录数
        $Page = new \Think\Page($count,5);// 实例化分页类 传入总记录数和每页显示的记录数(25)
        $show = $Page->show();// 分页显示输出
// 进行分页数据查询 注意limit方法的参数要使用Page类的属性
        $list = $User->limit($Page->firstRow.','.$Page->listRows)->select();
        $this->assign('users',$list);// 赋值数据集
        $this->assign('page',$show);// 赋值分页输出
$this->display(); // 输出模板

    }


    public function users()
    {
        $User = M('users'); // 实例化User对象
        $count = $User->count();// 查询满足要求的总记录数
        $Page = new \Think\Page($count,5);// 实例化分页类 传入总记录数和每页显示的记录数(25)
        $show = $Page->show();// 分页显示输出
// 进行分页数据查询 注意limit方法的参数要使用Page类的属性
        $list = $User->limit($Page->firstRow.','.$Page->listRows)->select();
        $this->assign('users',$list);// 赋值数据集
        $this->assign('page',$show);// 赋值分页输出
        $this->display(); // 输出模板
    }


    public function del($id)
    {
        //生成一个users模型，
        $usersModel = M("users");
        //调用模型的删除数据的方法；
        if ($usersModel->delete($id)) //delete from think_users where id=$id;
        {
            $this->success('删除成功！');
        } else {
            $this->error('删除失败！');
        }
    }


public function setstar($id)
{
    //生成一个users表对应的模型实例 usersModel
    $usersModel=M('users');
    $data['isstar']=1;
    $xid['id']=$id;
    if( $usersModel->where($xid)->save($data))
    {
        //updata users set isstar=1 where id=$id;
        //$usersModel->isstar=1;
        $this->success('设置成功');
    }
    else
    {
        $this->error('设置失败');
    }
}
    /*public function unstar($id)
    {
        //生成一个users表对应的模型实例 usersModel
        $usersModel=M('users');
        $data['isstar']=0;
        $xid['id']=$id;
        if( $usersModel->where($xid)->save($data)) {
            //updata users set isstar=1 where id=$id;
            //$usersModel->isstar=1;
            $this->success('取消成功');
        }
        else
        {
            $this->error('取消失败');
        }
    }*/


    public function unstar($id)
    {
        $usersModel=M('users');
        $usersModel->isstar=0;
        $usersModel->id=$id;
        if($usersModel->save())
        {
            $this->success('取消成功');
        }
        else
        {
            $this->error('取消失败');
        }
    }


    public function setfrist($id)
    {
        //生成一个users表对应的模型实例 usersModel
        $usersModel=M('users');
        $data['isfirst']=1;
        $xid['id']=$id;
        if( $usersModel->where($xid)->save($data)) {
            //updata users set isstar=1 where id=$id;
            //$usersModel->isstar=1;
            $this->success('设置成功');
        }
        else
        {
            $this->error('设置失败');
        }
    }
  /*  public function unfrist($id)
    {
        //生成一个users表对应的模型实例 usersModel
        $usersModel=M('users');
        $data['isfirst  ']=0;
        $xid['id']=$id;
        if( $usersModel->where($xid)->save($data)) {
            //updata users set isfirst=1 where id=$id;
            //$usersModel->isstar=1;
            $this->success('取消成功');
        }
        else
        {
            $this->error('取消失败');
        }
    }*/


    public function unfrist($id)
    {
        $usersModel=M('users');
        $usersModel->isfirst=0;
        $usersModel->id=$id;
        if($usersModel->save())
        {
            $this->success('取消成功');
        }
        else
        {
            $this->error('取消失败');
        }
    }


    public function updataUserInfo($id)
    {
        $usersModel=M('Users');
        $this->user=$usersModel->find($id);
        $this->display();
        //将查询到的用户信息传递给模板updataUserInfo.html

    }


    public  function  updata($id)
    {
        //$data=$_POST    $data=I(POST.)
        //creat() 利用post数组创建一个对象
        $usersModel=M('users');
        if($usersModel->create()) {
            if ($_FILES['photo']['error'] == 0) {
                $photoinfo = $this->upload();
                // var_dump($photoinfo);
                $usersModel->photo = $photoinfo['photo']['savename'];
            }
            if ($usersModel->save()) {
                $this->success('修改成功', 'users');
            } else {
                $this->error('修改失败');
            }
        }
        else
        {
            $this->error($usersModel->getDbError());
        }
    }


    public function upload()
    {
        $upload = new \Think \Upload();// 实例化上传类
        $upload->maxSize = 3145728 ;// 设置附件上传大小
        $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
        $upload->rootPath = './Public/uploads/photo/'; // 设置附件上传根目录
       // $upload->savePath = ''; // 设置附件上传（子）目录
        $upload->autoSub=false;
// 上传文件
        $info = $upload->upload();
        if(!$info)
        {// 上传错误提示错误信息
            $this->error($upload->getError());
        }
        else {// 上传成功
            return $info;
        }
    }


    public function img()
    {
        if ($_FILES['photo']['error'] == 0)
        {
            $photoinfo = $this->upload();
            $filePath="./Public/uploads/photo/";
            $oldFileName=$photoinfo['photo']['savename'];
            $oldFileFullName=$filePath."\\".$oldFileName;
            $newFileName='thumb_'.$oldFileName;
            $newFileFullName=$filePath."\\".$newFileName;

            $image=new \Think\Image();
            $image->open($oldFileFullName);
            $image->thumb(100,100)->save($newFileFullName);
            return $newFileName;
        }
    }


    public  function  addUser()
    {
        //1.接收从add.html界面所提交的信息
        //创建对象，保存对象到数据库中
        //$data=$_POST 或者   $data=I(POST.)
        //creat() 利用post数组创建一个对象
        //2.注意图像的名字需要单独处理，单独处理图像的上传，和photo字段的赋值。
        //3.保存到数据库

            $usersModel = D('users');//采用d方法才会自动验证
            if ($usersModel->create())
            {

            //处理图像上传
                if ($_FILES['photo']['error'] == 0)//判断文件上传是否成功
                {
                     $filename=$this->img();
                     // $photoinfo = $this->upload();//将临时文件保存到指定位置
                      $usersModel->photo=$filename;//获取文件的名字
                }
                if ($usersModel->add())
                {
                    $this->success('添加成功', 'users');
                }
                else
                {
                $this->error('添加失败');
                }

            }
            else
            {
            $this->error($usersModel->getError());
            }

    }
    public function initalize()
    {
        if(!session('?admin'))
        {
            $this->error('当前用户没有权限','Login/login');
            $this->redirect('Login/login');
            exit;
        }

    }
}